// test_ai_question.js
// 测试AI出题功能

require('dotenv').config({ path: './.env' });
const axios = require('axios');

async function testGenerateQuestion() {
  console.log('测试AI出题功能...');
  
  // 检查配置
  const DEEPSEEK_API_KEY = process.env.DEEPSEEK_API_KEY || '';
  console.log('DEEPSEEK_API_KEY:', DEEPSEEK_API_KEY ? '已设置' : '未设置');
  
  if (!DEEPSEEK_API_KEY || DEEPSEEK_API_KEY === 'your_actual_deepseek_api_key_here') {
    console.log('请在.env文件中配置DEEPSEEK_API_KEY');
    return;
  }

  try {
    // 模拟知识点内容
    const knowledgePointContent = `
# React组件基础

React组件是React应用的基本构建块。它们是可复用的、独立的代码片段，用于渲染UI。

## 函数组件

函数组件是JavaScript函数，接收props作为参数并返回React元素。

\`\`\`jsx
function Welcome(props) {
  return <h1>Hello, {props.name}</h1>;
}
\`\`\`

## 类组件

类组件是ES6类，继承自React.Component。

\`\`\`jsx
class Welcome extends React.Component {
  render() {
    return <h1>Hello, {this.props.name}</h1>;
  }
}
\`\`\`
`;

    // 测试生成选择题
    console.log('\n1. 测试生成选择题...');
    const response1 = await axios.post('http://localhost:3000/api/ai/generate-question', {
      knowledgePointContent: knowledgePointContent,
      difficulty: '基础',
      type: 'single-choice'
    }, {
      headers: {
        'Content-Type': 'application/json'
      }
    });

    console.log('选择题生成结果:');
    console.log(JSON.stringify(response1.data, null, 2));

    // 测试生成简答题
    console.log('\n2. 测试生成简答题...');
    const response2 = await axios.post('http://localhost:3000/api/ai/generate-question', {
      knowledgePointContent: knowledgePointContent,
      difficulty: '中等',
      type: 'short-answer'
    }, {
      headers: {
        'Content-Type': 'application/json'
      }
    });

    console.log('简答题生成结果:');
    console.log(JSON.stringify(response2.data, null, 2));

    console.log('\n✅ AI出题功能测试完成');
    
  } catch (error) {
    console.error('测试失败:', error.response ? error.response.data : error.message);
  }
}

// 运行测试
testGenerateQuestion();